import { TOKEN_KEY } from '@/constants'
import Cookies from 'js-cookie'

// export const getToken = () => {
//   return localStorage.getItem(TOKEN_KEY)
// }

// export const setToken = (token: string) => {
//   localStorage.setItem(TOKEN_KEY, token)
// }

// export const removeToken = () => {
//   localStorage.removeItem(TOKEN_KEY)
// }


/**
 * 获取存储在Cookies中的令牌
 * 
 * 此函数用于从Cookies中获取名为TOKEN_KEY的令牌，以便在应用程序中使用
 * 它主要用于身份验证和授权过程
 * 
 * @returns {string | undefined} 令牌字符串，如果不存在则返回undefined
 */
export const getLocalToken = () => {
  return Cookies.get(TOKEN_KEY)
}

/**
 * 设置令牌到Cookies
 * 
 * 当用户成功登录后，此函数用于将令牌字符串设置到Cookies中
 * 它对于保持用户会话和实现记住我功能至关重要
 * 
 * @param {string} token 令牌字符串，用于身份验证和授权
 */
export const setLocalToken = (token: string) => {
  Cookies.set(TOKEN_KEY, token)
}

/**
 * 从Cookies中移除令牌
 * 
 * 当用户注销或会话结束时，此函数用于从Cookies中移除令牌
 * 它确保用户的身份信息不会被恶意使用，并保护用户隐私
 */
export const removeLocalToken = () => {
  Cookies.remove(TOKEN_KEY)
}